﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HojaCalculoConsola
{
    class Program
    {
        const int numerosPorPantalla = 21;
        const int letrasPorPantalla = 8;
        const string letras = "ABCDEFGHIJKLMN0PQRSTUVWXYZ";

        static int columnaActual;
        static int filaActual;
        

        static void DibujarLineaGris()
        {
            Console.ForegroundColor = ConsoleColor.Black;
            Console.BackgroundColor = ConsoleColor.Gray;

            for (int i = 0; i < 80; i++)
                Console.Write(' ');

            Console.ForegroundColor = ConsoleColor.Gray;
            Console.BackgroundColor = ConsoleColor.Black;
        }

        static void DibujarLetras()
        {
            Console.SetCursorPosition(0, 3);

            Console.ForegroundColor = ConsoleColor.Black;
            Console.BackgroundColor = ConsoleColor.Gray;

            //Marco para números de 3 espacios
            Console.Write("   ");

            for (int i = 0; i < letrasPorPantalla; i++)
            {
                Console.Write("    {0}    ", letras[i]);
            }

            Console.ForegroundColor = ConsoleColor.Gray;
            Console.BackgroundColor = ConsoleColor.Black;
        }

        static void DibujarNumeros()
        {
            Console.SetCursorPosition(0, 4);

            Console.ForegroundColor = ConsoleColor.Black;
            Console.BackgroundColor = ConsoleColor.Gray;

            string auxiliar = "";

            for (int i = 0; i < numerosPorPantalla; i++)
            {
                auxiliar = "";
                auxiliar += i+1;
                while (auxiliar.Length < 3)
                    auxiliar = " " + auxiliar;
                if (i == numerosPorPantalla - 1)
                    Console.Write(auxiliar);
                else
                    Console.WriteLine(auxiliar);


            }

            Console.ForegroundColor = ConsoleColor.Gray;
            Console.BackgroundColor = ConsoleColor.Black;

            Console.SetCursorPosition(79, 2);
        }

        static void DibujarPantalla()
        {
            DibujarLineaGris();
            DibujarLineaGris();
            Console.WriteLine();
            DibujarLetras();
            DibujarNumeros();

        }


        static void Main(string[] args)
        {
            columnaActual = 0;
            filaActual = 0;

            DibujarPantalla();
            Console.ReadKey(true);
        }
    }
}
